<?
	/* Se asegura que el archivo es incluido por el index */
		defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );  
	/* Cuando se hace el include del archivo automaticamente crea un objeto y lo guarda en una variable temporal */
		$this->oTmpObject = new Termino_exe( $this );
		
	class Termino_exe extends Exe
	{
	function Termino_exe( &$oModule )
		{
			$this->oModule = &$oModule;
			$this->oDatabase = openMetadataDB ( getParam('cPathModule') );
		}
		
	// MODIFICAR_TERMINO
  function update()
    {
      // Convierte a variables los datos del Formulario asociado a la accion
      $oForm = $this->oModule->loadClass( 'Termino_frm' );
      extract( $oForm->getFieldArray() );
			$ncPersona = $this->oModule->oUserSession->getUser();
			$dActualizacion = date("Y-m-d");
			// Modifica el Registro
			$this->oDatabase->update("stTermino", 
								"cDescripcion", $cDescripcion, 
								"ncPersona", $ncPersona, 
								"dActualizacion", $dActualizacion, 
								"cdTermino", $cdTermino, 
								"ncSubModulo", $ncSubModulo, 
								"WHERE", "ncTermino", $ncTermino );        	
			$oForm->reset();
	}    
	// AGREGAR_TERMINO
	function insert()
	{
		// Convierte a variables los datos del Formulario asociado a la accion
		$oForm = $this->oModule->loadClass( 'Termino_frm' );
		extract( $oForm->getFieldArray() );
			$ncPersona = $this->oModule->oUserSession->getUser();
			$dActualizacion = date("Y-m-d");
			// Busca la proxima clave
			$ncTermino = $this->oDatabase->nextKey("stTermino", "ncTermino" );
			// Agrega el Registro
			$this->oDatabase->insert("stTermino", 
								"cDescripcion", $cDescripcion, 
								"ncPersona", $ncPersona, 
								"dActualizacion", $dActualizacion, 
								"cdTermino", $cdTermino, 
								"ncSubModulo", $ncSubModulo, 
								"ncTermino", $ncTermino );
			$oForm->reset();
	}
	// ELIMINAR_TERMINO
	function delete()
		{
			$ncTermino = getParam('ncTermino');
			// Elimina el Registro
			$this->oDatabase->delete("stTermino", "ncTermino", $ncTermino );
			// Redirecciona la siguiente accion
		}
	}
?>
